﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Objetos;
using AccesoDatos.Manejador;
/*Muestra los detalles del prestamo y genera un reporte
 * Muestra todos los descuentos que se le han hecho y cuanto resta del adeudo
 * 
 * 
 
 */
namespace Autorizacion_facturas_caja
{
    public partial class frmPrestamo_Detalles : Form
    {
        objRH objR1 = new objRH();
        objPrestamos objP1 = new objPrestamos();
        Manejador_Prestamos_DetallePago Man = new Manejador_Prestamos_DetallePago();

        public frmPrestamo_Detalles(objPrestamos objP, objRH objR)
        {
            InitializeComponent();
            objP1= objP;
            objR1 = objR;
            mostrarDatos();
            
           
            ToolTip1();
        }
        #region funciones
        public void mostrarDatos() {

            try
            {
                double sueldo, solicitado, autorizado, descontar, pagado;
                sueldo = Convert.ToDouble(objR1.Sueldo_Mensual);
                solicitado = Convert.ToDouble(objP1.Cantidad_Solicitud);
                autorizado = Convert.ToDouble(objP1.Cantidad_Autorizada);
                descontar = Convert.ToDouble(objP1.Monto_descontar);
                pagado = Convert.ToDouble(objP1.Saldo_pagado);
                lblNombre.Text = objR1.Nombre_completo;
                lblDepartamento.Text = objR1.Departamento;
                lblSucursal.Text = objR1.Nombre_Sucursal;
                lblSueldo_Mensual.Text = String.Format("$ {0:###,##0.00}", sueldo);
                lblAutorizado.Text = objP1.Autorizado;
                lblFecha.Text = objP1.Fecha_Solicitud.ToShortDateString();
                lblPrioridad.Text = objP1.Prioridad;
                lblTipo.Text = objP1.Tipo_prestamo;
                lblCantidad.Text = String.Format("$ {0:###,##0.00}", solicitado);

                lblFechaAutorizado.Text = objP1.Fecha_autorizacion.ToShortDateString();
                lblPlazo.Text = objP1.Plazo.ToString();
                lblCantidad_Descontada.Text = String.Format("$ {0:###,##0.00}", descontar);
              
                lblCantidadAUT.Text = String.Format("$ {0:###,##0.00}", autorizado);

                if (objP1.Autorizado == "SI")
                {
                    dataGridView1.DataSource = Man.PrestamosListas(objP1.Id_Prestamo);
                    propiedadesColumnas();
                    lblCantidad_Pagada.Text = String.Format("$ {0:###,##0.00}", pagado);
                    
                }
                else {
                    label16.Visible = false;
                    label6.Visible = false;
                    lblCantidad_Pagada.Visible = false;
                    dataGridView1.Visible = false;
                }
            }
            catch { }
        }
        public void propiedadesColumnas() {
            try
            {
                this.dataGridView1.RowHeadersVisible = false;
                this.dataGridView1.Columns["id_prestamo"].Visible = false;
                this.dataGridView1.Columns["id_pago"].Visible = false;
                this.dataGridView1.Columns["monto_pago"].HeaderText = "CANTIDAD PAGO";
                this.dataGridView1.Columns["fecha_pago"].HeaderText = "FECHA PAGO";
                this.dataGridView1.Columns["monto_pago"].DefaultCellStyle.Format = "c";
                this.dataGridView1.Columns["fecha_pago"].DefaultCellStyle.Format = "d";
            }
            catch { }
        }
        private void ToolTip1()
        {

            ToolTip toolTip1 = new ToolTip();
            toolTip1.ShowAlways = true;
            toolTip1.SetToolTip(this.btnInforme, "GENERAR REPORTE");
            toolTip1.SetToolTip(this.btnSalir, "REGRESAR");
        }
        #endregion 
        #region boton
        private void btnInforme_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable datos = Man.PrestamosListas(objP1.Id_Prestamo);
                frmPrestamos_Reporte_Detalles pres = new frmPrestamos_Reporte_Detalles(objP1, objR1, datos);
                pres.ShowDialog();
            }
            catch { }
        }
        private void btnSalir_Click(object sender, EventArgs e)
        {
            Close();
        }
        #endregion
    }
}
